iT邦幫忙

2024 iThome 鐵人賽

DAY 7
3

Who the hell are you 404

前言

有時候在使用網站時,某些網站會無法顯示內容並且出現 404 這個數字,而這到底是什麼?首先,這總稱叫做 HTTP 回應狀態碼,每個狀態都是由 3 位數字組成的代碼,共有五大類,分別代表不同意義:

  • 資訊回應(100——199):已收到請求,正在繼續處理
  • 成功回應(200——299):請求已成功接收、理解並接受
  • 重新導向訊息(300——399):需要採取進一步行動以完成請求
  • 用戶端錯誤回應(400——499):請求包含錯誤的語法或無法完成
  • 伺服器錯誤回應(500——599):伺服器未能完成顯然有效的請求

HTTP 狀態碼是伺服器對瀏覽器的請求所給出的回應。當你瀏覽一個網站時,你的瀏覽器會向網站伺服器發送請求(request),無論是圖片、JS 檔、CSS 檔……等,瀏覽器都會發送請求,而每個請求,伺服器都會用一個三位數的代碼來回應,這就是 HTTP 狀態碼。

Fun fact

404 代表著網頁不存在,這個狀態碼約出現於 1989–1991 年。巧合的是,在這段期間發生了兩起航班事故:一個是巴基斯坦國際航空公司,另一個是義大利航空,這兩起事故的航班號碼都是 404。

1989.08.25 巴基斯坦國際航空 PK404
1990.11.14 義大利航空 AZ404

麻瓜解釋


以 404 為例:小銘想看籃球比賽,但卻看到電視檢驗圖,或是小華打了一通無人使用的電話,結果收到:「您撥的號碼是空號」。這句話就等同於你拜訪了一個 404 Not Found。當你請求一個不存在的頁面或資源時,伺服器會返回這個錯誤,這可能是因為該頁面已被刪除,或是你輸入了錯誤的網址。

歷史


第一版的 HTTP (HTTP/0.9) 起初只是一個簡單的版本,純粹用來交換明文訊息,要求與獲取訊息,以及簡單的狀態碼概念。

對於正在成長與複雜的網路環境,HTTP/0.9 明顯有很多不足之處。於是 Berners-Lee 與其他幾名開發者協作,開始更新 HTTP,直到 1996 年才正式釋出 HTTP/1.0,並制定了具體規範和標準協定。

HTTP/1.0 其中一大特色是正式引入狀態碼機制,為伺服器提供了一種標準化的方式來告知用戶代理(如瀏覽器)請求的結果。這些早期狀態碼用於指示請求成功(如 200 OK)、資源未找到(如 404 Not Found)等情況。

後記

如果你還沒看到任何狀態碼,那我恭喜你,說明你在使用瀏覽器時一切正常,但碰到狀態碼也何嘗不是一種趣味?就像復活節彩蛋,平淡無奇很無聊,驚喜往往最有趣。

Emmmmm

今天是第 7 天,第 7 篇文章,主題是 404 ,而剛好我的頁面瀏覽人數是 404 ,是巧合嗎?EMMMM~!
https://ithelp.ithome.com.tw/upload/images/20240921/20169296y3QJgmSe2G.png

參考

HTTP 回應狀態碼 - HTTP | MDN
HTTP Status Code 是什麼?不同 HTTP 狀態碼代表什麼?教學 - 貓熊先生
Pakistan International Airlines Flight 404 - Wikipedia
義大利航空404號班機空難 - 維基百科,自由的百科全書
The history of HTTP and the stories behind status codes


上一篇
DAY6 什麼?!個資都被 HTTP 給洩漏了
下一篇
DAY8 學會 Vim 秒變駭客
系列文
麻瓜的程式翻譯書《Who the hell are you XXX》30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
jeremykuo
iT邦新手 5 級 ‧ 2024-09-21 21:38:07

看不到籃球卻看到彩虹頻道(?

華生 iT邦新手 5 級 ‧ 2024-09-22 08:29:49 檢舉

你是對的~

我要留言

立即登入留言